home *** CD-ROM | disk | FTP | other *** search
/ Nebula 1 / Nebula One.iso / Internet / News / Alexandra.0.82 / Source / AMGErrorHandling.subproj / EMObjcErrorCatcher.m < prev    next >
Encoding:
Text File  |  1996-01-30  |  1.3 KB  |  57 lines

  1.  
  2. #import "EMObjcErrorCatcher.h"
  3. #import "EMErrorManager.h"
  4. #import <appkit/appkit.h>
  5.  
  6.  
  7. @implementation EMObjcErrorCatcher
  8.  
  9. //--------------------------------------------------------------------------------
  10. // Initialize everything and poseAs the Object class.
  11. //--------------------------------------------------------------------------------
  12.  
  13. + setup
  14.     {
  15.     [[self class] poseAs:[Object class]];
  16.     return self;
  17.     }
  18.  
  19.  
  20. //--------------------------------------------------------------------------------
  21. // No exit() on error
  22. //--------------------------------------------------------------------------------
  23.  
  24. - error:(const char *)aString, ...
  25.     {
  26.     va_list     ap;
  27.     static char buffer[1024];    // weil in EMErrorInfo nur der Pointer gesp. ist
  28.     
  29.     va_start(ap, aString);
  30.     vsprintf(buffer, aString, ap);
  31.     va_end(ap);
  32.     
  33.     EM_ERROR(EM_INTBASE+9,[[self class] name],buffer);
  34.     return self;
  35.     }
  36.  
  37.  
  38. + error:(const char *)aString, ...
  39.     {
  40.     va_list     ap;
  41.     static char buffer[1024];
  42.     
  43.     va_start(ap, aString);
  44.     vsprintf(buffer, aString, ap);
  45.     va_end(ap);
  46.     
  47.     EM_ERROR(EM_INTBASE+9,[[self class] name],buffer);
  48.     return self;
  49.     }
  50.  
  51.  
  52. //--------------------------------------------------------------------------------
  53. // THAT'S IT
  54. //--------------------------------------------------------------------------------
  55.  
  56. @end
  57.